package dao

import (
	"douyin/config"
	"log"

	"github.com/garyburd/redigo/redis"
)

// redis连接池
var pool *redis.Pool

// InitRedisPool 初始化连接池
func InitRedisPool() {
	//实例化连接池
	pool = &redis.Pool{
		MaxIdle:     config.MaxIdle,     //最初的连接数量
		MaxActive:   config.MaxActive,   //连接池最大连接数量,0按需分配
		IdleTimeout: config.IdleTimeout, //连接自动关闭时间
		Dial: func() (redis.Conn, error) { //要连接的redis数据库
			c, err := redis.Dial("tcp", config.RedisAddr)
			if err != nil {
				log.Println("redis初始化失败,", err)
			}
			return c, err
		},
	}
}

// GetRedisConn 取连接，不暴露连接池
func GetRedisConn() redis.Conn {
	return pool.Get()
}
